package com.aidex.biz.service;

import com.aidex.biz.domain.CapBill;
import com.aidex.biz.domain.vo.OrgTypeStatisticVo;
import com.aidex.common.core.service.BaseService;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * 资方结算Service接口
 *
 * @author sean
 * @email 2074844820@qq.com
 * @date 2023-12-17
 */
public interface CapBillService extends BaseService<CapBill> {

    /**
     * 批量删除资方结算
     *
     * @param ids 需要删除的资方结算ID集合
     * @return 结果
     */
    public int deleteCapBillByIds(String[] ids);

    /**
     * 获取最大编号
     *
     * @param capBill 资方结算
     * @return 结果
     */
    public int findMaxSort(CapBill capBill);

    /**
     * 查找符合条件的第一条数据
     *
     * @param capBill
     * @return
     */
    public CapBill findOne(CapBill capBill);

    /**
     * 费用统计
     *
     * @param capBill
     * @return
     */
    public PageInfo<OrgTypeStatisticVo> orgTypeStatistic(CapBill capBill);

    /**
     * 资方统计 合计
     *
     * @param capBill
     * @return
     */
    public OrgTypeStatisticVo sumOrgTypeStatistic(CapBill capBill);

    /**
     * 费用统计
     *
     * @param capBill
     * @return
     */
    public List<OrgTypeStatisticVo> ExportOrgTypeStatistic(CapBill capBill);

    public List<OrgTypeStatisticVo> orgTypeDetailStatistic(CapBill capBill);

    public int deleteById(String id);

    /**
     * 点击数字查询具体资方放款
     *
     * @param capBill
     * @return
     */
    public PageInfo<OrgTypeStatisticVo> orgTypeDetailStatisticRecords(CapBill capBill);
}
